# レッスン 1: ズボンを nCloth に変換してシミュレーションを設定する

シミュレーション環境を設定する前に、低解像度のズボン メッシュ(Pants_LowRes)を nCloth オブジェクトに変換する必要があります。nCloth オブジェクトが作成されると、nClothShape ノードと Nucleus ノードが作成されます。これでシミュレーション環境を設定できます。

このレッスンでは、次の操作を行います。

- Pants_LowRes オブジェクトを nCloth オブジェクトに変換します。
- 胴体と靴のオブジェクトをパッシブ衝突オブジェクトに変換します。
- 時間アトリビュート(Time Attributes)やスケール アトリビュート(Scale Attributes)などの nucleus ソルバ プロパティを設定します。

## ズボンを nCloth に変換する

ズボンを nCloth に変換するには

1. Maya で Character_LowRes_1.mb を開きます。
2. 低解像度のズボン(Pants_LowRes)、胴体、靴のみがシーン ビューに表示されているか確認してください。

   Shirt_LowRes オブジェクトなど、その他のオブジェクトが表示されている場合は、アウトライナ(Outliner)で各オブジェクトを選択し、ディスプレイ > 非表示 > 選択項目の非表示(Display > Hide > Hide Selection)を選択して非表示にします。

3. Pants_LowRes オブジェクトを選択し、nCloth > nCloth の作成(nCloth > Create nCloth)を選択します。

   低解像度のズボンが nCloth オブジェクトに変換され、その Maya Nucleus ソルバが作成されます。

4. このチュートリアルで作成するすべての nCloth オブジェクトをシーンで簡単に特定できるようにするために、ズボンの nCloth オブジェクトの名前を変更します。これを行うには、アウトライナ(Outliner)で nCloth1 をダブルクリックし、nCloth_Pants と入力して Enter キーを押します。
5. シミュレーションを再生します。

   シミュレーションを再生すると、nCloth が nucleus フォースに反応しない、つまりシミュレートされないことがわかります。次の手順に沿って、シーンの開始フレームを調整して nCloth がシミュレートされるようにします。

## シミュレーションを設定する

nCloth のシミュレーションを開始する前に、nucleus ソルバのプロパティをシミュレーションに合わせて調整することが重要です。Maya Nucleus ソルバのプロパティは、特定のソルバ システムのメンバーであるすべてのノードに作用する内部フォースをコントロールします。

注意が必要な最も重要な nucleus ソルバ アトリビュートの 1 つとして空間スケール(Space Scale)があります。空間スケール(Space Scale)を既定値の 1 に設定すると、nucleus ソルバはオブジェクトがメートル単位でスケールされているかのように重力(Gravity)と風(Wind)をオブジェクトに適用します。プロダクション パイプラインによっては、nCloth シミュレーションで使用するジオメトリを実際のサイズまたは大きいスケールでモデリングすることがあります。このような場合は、空間スケール(Space Scale)を調整してスケールの違いを補正する必要があります。詳細については、Maya ヘルプの「Maya Nucleus ソルバのプロパティ」を参照してください。

### nucleus ソルバ アトリビュートを設定する

このチュートリアルでは、タイム スライダ(Time Slider)の設定で、シーンの再生時間がフレーム 1000 で開始しフレーム 1150 で終了するように指定されています。既定では、nucleus ソルバはフレーム 1 からシミュレーションを開始します。シーンのシミュレーションを開始するには、シミュレーションの開始フレーム(Start Frame)をフレーム 1000 に設定します。

シミュレーションの開始フレーム(Start Frame)を設定するには

1. アトリビュート エディタ(Attribute Editor)で、nucleus1 タブを選択します。
2. 時間アトリビュート(Time Attributes)セクションで、開始フレーム(Start Frame)を 1000 に設定します。
3. 開始フレームまで巻き戻し、シミュレーションを再生します。

シミュレーションを再生すると、nCloth ズボンが nucleus ソルバで生成された重力の影響を受けてずり落ちているのがわかります。ただし、ずり落ちる速度が遅すぎてあまりリアルに見えません。これは、シーン内のオブジェクトのスケールが nucleus ソルバ システムのスケールと一致していない場合に起こります。nucleus ソルバはセンチメートルをメートルとしてシミュレートするため、Maya Nucleus ソルバの空間スケール(Space Scale)を調整する必要があります。このシーンでは、キャラクタと衣類メッシュは Maya のシーン単位であるセンチメートルを使用してモデリングされています。そのため、実際のサイズにモデリングされた nCloth オブジェクトをシミュレートするには、空間スケール(Space Scale)を 0.01 に設定する必要があります。

空間スケール(Space Scale)を編集するには

1. スケール アトリビュート(Scale Attributes)セクションまたは nucleus1 タブで、空間スケール(Space Scale)を 0.01 に設定します。

   空間スケール(Space Scale)アトリビュートを減らすと、ズボンが非常に小さいオブジェクトであるかのように評価されます。その結果、nCloth ズボン オブジェクトに対する引力の作用が目に見えて増加します。

2. シミュレーションを再生します。

シミュレーションを再生すると、今度は nCloth ズボンが開始位置からリアルな速度で落ちますが、シーンをはみ出して落ちていくことがわかります。ズボンがシーン ビューをはみ出して落ちるのを止めるには、nucleus の地表プレーン(Ground Plane)をオンにします。

nucleus の地表プレーン(Ground Plane)をオンにするには

1. nucleus1 タブの地表プレーン(Ground Plane)セクションで、プレーンの使用(Use Plane)をオンにします。
2. シミュレーションを再生します。

   シミュレーションを再生すると、ズボンが胴体と靴のオブジェクトと衝突していないことがわかります。これは胴体と靴のメッシュがまだ nCloth の nucleus システムの一部でないためです。次の手順では、これらのオブジェクトをパッシブ衝突オブジェクトに変換します。

### 胴体と靴をパッシブ衝突オブジェクトに変換する

シミュレーションの設定の最後の手順として、胴体と靴のメッシュをパッシブ衝突オブジェクトに変換します。パッシブ衝突オブジェクトにすると、胴体と靴のメッシュは nCloth ズボン オブジェクトと衝突するようになります。

胴体と靴のメッシュを衝突オブジェクトに変換するには

1. シーン ビューで、Shift キーを押しながら胴体と靴のメッシュを選択し(nCloth_Pants の選択は解除します)、nCloth > パッシブ コライダの作成(nCloth > Create Passive Collider) > を選択します。
2. 衝突の作成オプション(Maked Collide Options) ウィンドウで、ソルバ(Solver)ドロップダウン リストから nucleus1 を選択します。
3. 衝突の作成(Make Collide)をクリックします。

   2つの nRigid ノード(nRigid1 と nRigid2)がアウトライナ(Outliner)に表示されます。

4. 胴体と靴のオブジェクトをシーンで簡単に特定できるようにするために、nRidgid ノードの名前をアウトライナ(Outliner)で変更します。これを行うには、nRigid1 をダブル クリックし、nRigid_Body と入力して Enter キーを押します。靴のオブジェクトについても同じ操作を行い、nRigid2 の名前を nRigid_Shoes に変更します。